/*
ont-space - The ontology-based resource metadata repository
Copyright (c) 2006-2008, Information Eng. Research Unit - Univ. of Alcalá
http://www.cc.uah.es/ie
This library is free software; you can redistribute it and/or modify it under
the terms of the GNU Lesser General Public License as published by the Free
Software Foundation; either version 2.1 of the License, or (at your option)
any later version.
This library is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
details.
You should have received a copy of the GNU Lesser General Public License along
with this library; if not, write to the Free Software Foundation, Inc.,
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
 */
package org.ontspace.oki.owl;

import org.osid.repository.Asset;
import org.osid.repository.RepositoryException;
import org.ontspace.owl.QueryResultImpl;

/**
 * AssetIterator provides access to these objects sequentially, one at a time. 
 * The purpose of all Iterators is to to offer a way for OSID methods to return 
 * multiple values of a common type and not use an array. Returning an array 
 * may not be appropriate if the number of values returned is large or is 
 * fetched remotely.
 */
public class OspaceOKIAssetIteratorImpl implements org.osid.repository.AssetIterator {

    QueryResultImpl r;

    public OspaceOKIAssetIteratorImpl(QueryResultImpl results) {
        r =
                results;
    }

    /**
     * Return true if there is an additional Asset ; false otherwise.
     * @return boolean value
     * @throws org.osid.repository.RepositoryException
     */
    public boolean hasNextAsset() throws RepositoryException {
        throw new UnsupportedOperationException("Not supported yet.");
    }

    /**
     * Return the next Asset.
     * @return Asset
     * @throws org.osid.repository.RepositoryException
     */
    public Asset nextAsset() throws RepositoryException {
        Asset results =
                new OspaceOKIAssetImpl(r);
        return results;
    }
}
